home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ShareWare OnLine 2
/
ShareWare OnLine Volume 2 (CMS Software)(1993).iso
/
prog
/
pbc22b.zip
/
PBC$BAS.ZIP
/
BINSEEKS.BAS
< prev
next >
Wrap
BASIC Source File
|
1993-01-01
|
1KB
|
39 lines
' +----------------------------------------------------------------------+
' | |
' | PBClone Copyright (c) 1990-1993 Thomas G. Hanlin III |
' | |
' +----------------------------------------------------------------------+
SUB BinSeekS (Array!(), Elements%, Target!, Posn%)
IF Elements% = 0 THEN
Posn% = -1
ELSE
Top% = 1
Bottom% = Elements% + 1
OldPlace% = Bottom%
DO
Place% = (Top% + Bottom%) \ 2
IF Place% = OldPlace% THEN
NotThere% = -1
ELSEIF Array!(Place%) = Target! THEN
Found% = -1
ELSEIF Array!(Place%) > Target! THEN
Bottom% = Place%
ELSE
Top% = Place%
END IF
OldPlace% = Place%
LOOP UNTIL Found% OR NotThere%
IF NotThere% THEN
IF Elements% = UBOUND(Array!) THEN
Posn% = 0
ELSE
IF Target! > Array!(Place%) THEN Place% = Place% + 1
Posn% = -Place%
END IF
ELSE
Posn% = Place%
END IF
END IF
END SUB